import { get, post, remove, put } from '@/server/request'
import { baseApi, RequestCode } from '@/server/base'
import axios from 'axios';
import type { UploadFile } from 'element-plus'

export const Project = {
  /**
   * 查询数据
   * @param params 
   * @returns 
   */
  list(params?: any) {
    return get(`${baseApi}/project/listProject`, params);
  },
  /**
   * 删除一条数据
   * @returns : Promise<RequestCode>
   */
  removeById(params: { id: string | number }) {
    return remove(`${baseApi}/project/remove/${params.id}`, params);
  },
  // /**
  //  * 根据ID获取一条数据
  //  * @param params 
  //  * @returns 
  //  */
  // getTagDetailById(params: { id: string | number }) {
  //   return get(`${baseApi}/tag/get`, params);
  // },
  // /**
  //  * 添加一条数据
  //  * @param params 
  //  */
  // addProjectInfo(params: ProjectInfo) {
  //   return post(`${baseApi}/project/save`, params);
  // },
  // /**
  //  * 修改一条数据
  //  * @param params 
  //  * @returns 
  //  */
  // modifyProjectInfo(params: ProjectInfo) {
  //   return post(`${baseApi}/project/updateProject/${params.id}`, params);
  // },

  /**
   * 保存项目
   */
  saveProjectInfo(file: UploadFile, params: any): Promise<RequestCode> {
    //使用 原生的制定格式进行图片上传
    const url = `${baseApi}/project/saveOrupdate`;
    let data = new FormData();
    Object.keys(params).map((key: string) => {
      data.set(key, params[key]);
    })
    const fileBlob = file.raw as any;
    data.append('file', fileBlob, file.name);

    const config = { headers: { 'Content-type': 'multipart/form-data' } };
    return axios.post(url, data, config);
  },

  /**
   * 获取行业信息
   */
  industryList(){
    return get(`${baseApi}/industry/listIndustry`);
  } 





}

export type ProjectInfo = {
  id?: string | number,
  createTime?: string,
  updateTime?: string,
  item: string,//	路径	
  meta: string,//	元数据	
  name: string,//	菜单名称	
  parentId: number,//	父目录id，无父目录则为0	
  type: number
}

